﻿/******************************************************************************
 *  PawnShop.UI.DDDW.JS  [written by zhouqd] 
 *  publish date: 2009-7-6 (V0.1) 
 *****************************************************************************/
/******************************************************************************
 * 公用函数部分
 */
/* 
 * 定义String的Trim方法
 */
String.prototype.trim = function()
{
    return this.replace(/(^\s*)|(\s*$)/g, "");
}
/*
 * 通过id得到控件
 */
function $(id) {return document.getElementById(id);}
/*
 * 定义公用的命名空间PawnShop
 */
function PawnShop(){};
PawnShop.prototype.NameSpace = function(){
    var a = arguments, o = null, i, j, d, rt;
    for (i = 0; i < a.length; ++i) {
        d = a[i].split(".");
        rt = d[0];
        eval('if (typeof ' + rt + ' == "undefined"){' + rt + ' = {};} o = ' + rt + ';');
        for (j = 1; j < d.length; ++j) {
            o[d[j]] = o[d[j]] || {};
            o = o[d[j]];
        }
    }
}
var PawnShop = new PawnShop();

/******************************************************************************
 * Utility definition 
 * 包括属性与事件的操作方法
 */
PawnShop.NameSpace("PawnShop.Utility");
//PawnShop.Utility = new PawnShop.Utility();
// 判断obj是否有property属性，没有则按value值设置该属性
PawnShop.Utility.AddProperty = function (obj,property,value)
{
  	eval("if(typeof(obj."+ property + ")=='undefined') obj." + property + "=" + value);
}
// 删除obj的property属性
PawnShop.Utility.RemoveProperty = function (obj,property)
{
	eval("delete obj." + property);
}
// 设置obj的事件处理函数		
PawnShop.Utility.AddEvent = function (obj,event_name,cb_function)
{	
	if(typeof(obj.Event_Array) != 'object') obj.Event_Array = new Object; //得到事件列表

	PawnShop.Utility.AddProperty(obj.Event_Array,event_name,'new Object()'); 
	eval("var tmp = obj.Event_Array." + event_name);
	PawnShop.Utility.AddProperty(tmp,cb_function,cb_function); //为事件加入相应的处理函数

	if(Tree_isNC6 && obj) 
	{
		obj.removeEventListener(event_name,cb_function,false);
		return obj.addEventListener(event_name,cb_function,false);
	}
	if(Tree_isIE && obj) 
	{
		obj.detachEvent("on"+event_name,cb_function);
		//Tree_OnEvent事件处理函数为统一的函数，在该函数的内部在针对不同的节点的注册事件
		//（依据event_name，cb_function确定）做出相应的处理		
		return obj.attachEvent("on"+event_name,cb_function); 
		
	}
}
// 删除obj的事件处理函数
PawnShop.Utility.DetachEvent=function (obj,event_name,cb_function)
{
	if(typeof(obj.Event_Array)=='object')
	{
		eval("var tmp=obj.Event_Array."+ event_name);
		PawnShop.Utility.remove_property(tmp,cb_function);
	}
}
/******************************************************************************
 *  定义树状下拉列表类
 */
PawnShop.NameSpace("PawnShop.UI");
PawnShop.UI.DDLTable = function(inputObj,headerColumns,dataSource)
{
	this._Obj = null;
    this._Target = "_blank";
    this._Select_Node = null;
    this._Indent = "16px";
    this._Line_Height = "14px";
    this._Line_Width = "19px";
	this._HeaderColumns;
    this._DataSource = null;
	this._Table = null;
	this._Table_Class = null;
    this._Rows = null;
	this._Div = null;
	this._Select_Row = null;
	
	var positionList = {
		getClientLeft: function(el){
			var r = el.getBoundingClientRect();
			return r.left - this.getBorderLeftWidth(this.getCanvasElement(el));
		},
		getClientTop: function(el){
			var r = el.getBoundingClientRect();
			return r.top - this.getBorderTopWidth(this.getCanvasElement(el));
		},
		getLeft: function(el){
			return this.getClientLeft(el) + this.getCanvasElement(el).scrollLeft;
		},
		getTop: function(el){
			return this.getClientTop(el) + this.getCanvasElement(el).scrollTop;
		},
		getInnerLeft: function(el){
			return this.getLeft(el) + this.getBorderLeftWidth(el);
		},
		getInnerTop: function(el){
			return this.getTop(el) + this.getBorderTopWidth(el);
		},
		getWidth: function(el){
			return el.offsetWidth;
		},
		getHeight: function(el){
			return el.offsetHeight;
		},
		/*
		 * document.compatMode，可以用来判断当前页面采用的渲染方式
		 * BackCompat：标准兼容模式关闭
		 * CSS1Compat：标准兼容模式开启
		 * 当document.compatMode等于BackCompat时，浏览器客户区宽度是document.body.clientWidth
		 * 当document.compatMode等于CSS1Compat时，浏览器客户区宽度是document.documentElement.clientWidth
		 * 浏览器客户区高度、滚动条高度、滚动条的Left、滚动条的Top等等都是上面的情况。
		 */
		getCanvasElement: function(el){
			var doc = el.ownerDocument || el.document; // IE55 bug
			if (doc.compatMode == "CSS1Compat") 
				return doc.documentElement;
			else 
				return doc.body;
		},
		getBorderLeftWidth: function(el){
			return el.clientLeft;
		},
		getBorderTopWidth: function(el){
			return el.clientTop;
		},
		getScreenLeft: function(el){
			var doc = el.ownerDocument || el.document; // IE55 bug
			var w = doc.parentWindow;
			return w.screenLeft + this.getBorderLeftWidth(this.getCanvasElement(el)) + this.getClientLeft(el);
		},
		getScreenTop: function(el){
			var doc = el.ownerDocument || el.document; // IE55 bug
			var w = doc.parentWindow;
			return w.screenTop + this.getClientTop(el);//+ this.getBorderTopWidth(this.getCanvasElement(el))
		}
	};
	var funProcess = {
		loadDateFromXML : function (sFile)
		{
		    var oDoc = new ActiveXObject("MSXML2.DOMDocument");
		    oDoc.async = false;
		    oDoc.load(sFile);
		    return oDoc;
		},
		Xml2Array : function (sFile,sNodeName) {
			var retArray = {
					columnName : new Array(),
					rows : new Array()
				};
			
			var oDoc = this.loadDateFromXML(sFile);
			
			if(sNodeName) {
			    sNodeName = "//" + sNodeName;
			    list = oDoc.selectNodes(sNodeName);
			}
			else return retArray;
			
		    for(i = 0; i < list.length; i++) {
				if (i == 0) {
					tRow = new Array();
					for (j = 0; j < list[i].childNodes.length; j++) {
						retArray.columnName[j] = list[i].childNodes[j].nodeName;
						tRow[j] = list[i].childNodes[j].childNodes[0].nodeValue;
					}
					retArray.rows[0] = tRow;
				}
				else {
					tRow = new Array();
					for (j = 0; j < list[i].childNodes.length; j++) {
						for (k = 0; k < retArray.columnName.length; k++) {
							if (list[i].childNodes[j].nodeName == retArray.columnName[k]) {
								tRow[k] = list[i].childNodes[j].childNodes[0].nodeValue;
							}
						}
					}
					retArray.rows[i] = tRow;
				}
		     }
			 return retArray;
		},
		GetTable : function(headerColums,dataSource){
			oTable = document.createElement("<TABLE BORDER=1 CellPadding=0 cellspacing=0>");
			if (_Table_Class) {
			    oTable.className = _Table_Class;
			}
			oHeader = oTable.createTHead();
			oHeader_Row = oHeader.insertRow(-1);
			
			arrColumns = new Array();
			for(hi = 0; hi < headerColums.length; hi++){
				/*
				 * 按照给定的字段描述于数据的数组中的字段信息比较，
				 * 得到相应列的标号存入数组arrColumns中
				 */
				for (dsi = 0; dsi < dataSource.columnName.length; dsi++ ){
					if (headerColums[hi].col_name == dataSource.columnName[dsi]) {
						arrColumns.push(dsi);
						oHeader_Row_Cell = oHeader_Row.insertCell(hi);
						if(headerColums[hi].col_name) oHeader_Row_Cell.innerText = headerColums[hi].col_name;
						if(headerColums[hi].col_width) oHeader_Row_Cell.width = headerColums[hi].col_width;
						break;
					}
				}
			}
			if (arrColumns.length > 0) {
				for (i = 0; i < dataSource.rows.length; i++) {
					oTable_Row = oTable.insertRow(-1);
					for (j = 0; j < arrColumns.length; j++ ){
					//for (j = 0; j < rowsArray.rows[i].length; j++) {
						oTable_Row_Cell = oTable_Row.insertCell(-1);
						oTable_Row_Cell.id = "DDDL_DIV_TABLE_ROW_TD_" + i + "_" + arrColumns[j];
						sTable_Row_Cell_Nobr = "<NOBR ID=DDDL_DIV_TABLE_ROW_NOBR_" + i + "_" + arrColumns[j] + ">" +
						dataSource.rows[i][arrColumns[j]] +
						"</NOBR>";
						oTable_Row_Cell_Nobr = document.createElement(sTable_Row_Cell_Nobr);
						//oTable_Row_Cell.appendChild(oTable_Row_Cell_Nobr);
						oTable_Row_Cell.innerHTML = sTable_Row_Cell_Nobr;
					}
				}
			}
			return oTable;	
		},
		getDiv: function(inObj){
		    var oDiv = $("DDDL_DIV_MAIN_" + inObj.id);
		    if (oDiv) {
				return oDiv;
			}
			else {
				iLeft = positionList.getClientLeft(inObj) + positionList.getCanvasElement(inObj).clientLeft;
				iTop = positionList.getClientTop(inObj) + inObj.offsetHeight + positionList.getCanvasElement(inObj).clientTop;
				//  		var iLeft = posLib.getScreenLeft(outObject);
				//			var iTop = posLib.getScreenTop(outObject)+outObject.offsetHeight;
				iHeigth = 500;
				iWidth = 500;
				sDiv = "<DIV id=" + "DDDL_DIV_MAIN_" + inObj.id + " style=\"z-index:9999;visibility:hidden;position: absolute;left:" + iLeft +
				"px; top:" +
				iTop +
				"px; height:" +
				iHeigth +
				"px; width:" +
				iWidth +
				"px;\">"
				oDiv = document.createElement(sDiv);
				sIframe_Inner = "<iframe FRAMEBORDER=0px src=\"javascript:false\" style=\"z-index:-1;position:absolute;border:0px; " +
				"scrolling:no;visibility:inherit; " +
				"top:" +
				0 +
				"px; left:" +
				0 +
				"px; width:" +
				100 +
				"%; height:" +
				100 +
				"%; \"></iframe>";
				oIframe_Inner = document.createElement(sIframe_Inner);
				oDiv.appendChild(oIframe_Inner);
				sDiv_Inner = "<DIV id=" + "DDDL_DIV_INNER_" + inObj.id + " style=\"z-index:9999;position: absolute;overflow:auto; left:0;" +
				"top:0;height:100%;width:100%;\">";
				oDiv_Inner = document.createElement(sDiv_Inner);
				oDiv.appendChild(oDiv_Inner);
				oDiv.Inner_Frame = oIframe_Inner;
				oDiv.Inner_Div = oDiv_Inner;
				return oDiv;
			}
		},
		tableFilter : function(inArray,sId,sVal){
		    if (!sVal) return inArray;
			var retArray = {
				columnName : new Array(),
				rows : new Array()
			};
			var columnIndex = 0;
			if (typeof(sId) == 'string') {
				for (i = 0; i < inArray.columnName.length; i++) {
					if (inArray.columnName[i] == sId) {
						columnIndex = i;
						break;
					}
				}
			}
			else if (typeof(sId) == 'int') {
				columnIndex = sId;
			}
			else {
				return;
			}
			retArray.columnName = inArray.columnName;
		    for(i = 0; i < inArray.rows.length; i++) {
				tRow = new Array();
				sValue = inArray.rows[i][columnIndex];
				if(sValue.substring(0,sVal.length) == sVal) {
					tRow = inArray.rows[i];
					retArray.rows.push(tRow);
				}
		    }
			return retArray;
		},
		selectRow : function (inTable,rowNumber,isSelect) {
			if (parseInt(rowNumber) != 'NaN') {
			    if(inTable.rows[rowNumber]) {
				    if (isSelect) {
					    inTable.rows[rowNumber].className = "MOUSE_HOVER";
				    }
				    else {
					    inTable.rows[rowNumber].className = "MOUSE_OUT";
				    }
				}
			}
		},
		isChineseStr : function (inStr) {
		    if (typeof(inStr) == "string") {
		        reg = /^[\u4e00-\u9fa5]+$/i;
                return reg.test(inStr);
            }
            else {
                return false;
            }
        },
        /**
         * This function creates a new anchor element and uses location
         * properties (inherent) to get the desired URL data. Some String
         * operations are used (to normalize results across browsers).
         * http://james.padolsey.com/javascript/parsing-urls-with-the-dom/
         * <pre lang="javascript">
           var myURL = parseURL('http://zhys9.com:8080/blog/index.php?id=255&m=hello#top');
           myURL.file;     // = 'index.php'
           myURL.hash;     // = 'top'
           myURL.host;     // = 'zhys9.com'
           myURL.query;    // = '?id=255&m=hello'
           myURL.params;   // = Object = { id: 255, m: hello }
           myURL.path;     // = '/blog/index.php'
           myURL.segments; // = Array = ['dir', 'index.php']
           myURL.port;     // = '8080'
           myURL.protocol; // = 'http'
           myURL.source;   // = 'http://zhys9.com:8080/blog/index.php?id=255&m=hello#top'
           </pre>
         */
        parseURL : function (url) {
            var a = document.createElement('a');
            a.href = url;
            return {
                source: url,
                protocol: a.protocol.replace(':',''),
                host: a.hostname,
                port: a.port,
                query: a.search,
                params: (function(){
                    var ret = {},
                        seg = a.search.replace(/^\?/,'').split('&'),
                        len = seg.length, i = 0, s;
                    for (;i<len;i++) {
                        if (!seg[i]) { continue; }
                        s = seg[i].split('=');
                        ret[s[0]] = s[1];
                    }
                    return ret;
                })(),
                file: (a.pathname.match(/\/([^\/?#]+)$/i) || [,''])[1],
                hash: a.hash.replace('#',''),
                path: a.pathname.replace(/^([^\/])/,'/$1'),
                relative: (a.href.match(/tp:\/\/[^\/]+(.+)/) || [,''])[1],
                segments: a.pathname.replace(/^\//,'').split('/')
            };
        },
        showDiv : function (inDiv,bShow) {
			if (inDiv) {
				if (bShow) 
					inDiv.style.visibility = 'visible';
				else 
					inDiv.style.visibility = 'hidden';
			}
		}
	}
	function eventProcess(inObj,inDiv,inDataSource,inHeaderColumns){
		/*
		 * 显示控件
		 */
	    this.objPropertyChange = function () {
	        var e = event.srcElement;
	        if(e.value == '') {
	            funProcess.showDiv(inDiv,false);
	            return;
	        }
	        if (funProcess.isChineseStr(e.value)) {
	            this.showTable(inObj,inDiv,inHeaderColumns,inDataSource,e.value.toUpperCase(),'CNAME');
	            funProcess.showDiv(inDiv,true);
	        }
	        else {
	            this.showTable(inObj,inDiv,inHeaderColumns,inDataSource,e.value.toUpperCase(),'CITYCODE');
	            funProcess.showDiv(inDiv,true);
	        }
	    };
		this.objKeyUp = function () {
		    if(inDiv.Inner_Div.Inner_Table) {
	            switch(event.keyCode)
	            {
		            case 38: //UP
			            funProcess.selectRow(inDiv.Inner_Div.Inner_Table,_Select_Row,false);
			            _Select_Row = (_Select_Row <= 1) ? inDiv.Inner_Div.Inner_Table.rows.length - 1 : _Select_Row - 1;
			            funProcess.selectRow(inDiv.Inner_Div.Inner_Table,_Select_Row,true);
			            break;
		            case 40: //DOWN
			            funProcess.selectRow(inDiv.Inner_Div.Inner_Table,_Select_Row,false);
			            _Select_Row = (_Select_Row >=  inDiv.Inner_Div.Inner_Table.rows.length -1) ? 1 : _Select_Row + 1;
			            funProcess.selectRow(inDiv.Inner_Div.Inner_Table,_Select_Row,true);
			            break;
		            default:
			            break;	
	            }
	        }
        }
        this.objKeyPress = function(){
            if(inDiv.Inner_Div.Inner_Table) {
			    if (event.keyCode == 13) {
				    if (_Select_Row >= 1) {
					    sText = inDiv.Inner_Div.Inner_Table.rows[_Select_Row].cells[2].innerText;
					    _Select_Row = 0;
					    inObj.value = sText || "";
					    funProcess.showDiv(inDiv, false);
					    return false;
				    }
			    }
			}
		}
//		this.tableRegEvent = function (inTable) {
//			if (typeof(inTable) != "undefined") {
//				inTable.attachEvent("onclick",this.tableClick);
//				inTable.attachEvent("onmouseover",this.tableMouseOver);
//				inTable.attachEvent("onmouseout",this.tableMouseOut);
//			}
//		};
		this.showTable = function (inObj,inDiv,inHeaderColumns,inDataSource,inValue,inColumn) {
		    var retArray = funProcess.tableFilter(inDataSource,inColumn,inValue);
		    var retTable = funProcess.GetTable(inHeaderColumns, retArray);
		    inDiv.Inner_Div.innerHTML = "";
		    inDiv.Inner_Div.Inner_Table = retTable;
		    inDiv.Inner_Div.appendChild(retTable);
		    document.body.appendChild(inDiv);
		    _Select_Row = 0;
			this.tableEvent(inObj,inDiv,retTable);
	    };
	    this.tableEvent = function(inObj,inDiv,inTable){
	        this.tableClick = function() {
			    var e = event.srcElement;
		        if (e.tagName == "LABEL")  
		        {
			        if(e.id != "")
			        {
				        //ShowData(e.id);
			        }
		        }
		        if (e.tagName == "NOBR")  
		        {
		            arrRowsId = e.id.split("_");
		            if (arrRowsId) {
					    sRowId = parseInt(arrRowsId[5]) + 1;
					    sText = inTable.rows[sRowId].cells[2].childNodes[0].innerText;
					    inObj.value = sText || "";
					    funProcess.showDiv(inDiv,false);
				    }
		        }
		        if (e.tagName == "TD")
		        {
				    arrRowsId = e.id.split("_");
		            if (typeof(arrRowsId[5]) != "undefined") {
					    sRowId = parseInt(arrRowsId[5]) + 1;
					    sText = inTable.rows[sRowId].cells[2].childNodes[0].innerText;
					    inObj.value = sText || "";
					    funProcess.showDiv(inDiv,false);
				    }
		        }
		    }
		    this.tableMouseOver = function(){
			    var e = event.srcElement;
			    if (e.tagName == "LABEL")  
		        {
			        if(e.id != "")
			        {
				        //ShowData(e.id);
			        }
		        }
		        if (e.tagName == "NOBR")  
		        {
		            arrRowsId = e.id.split("_");
		            if (typeof(arrRowsId[5]) != "undefined") {
		                arrRowsId[5] = parseInt(arrRowsId[5]) + 1;
					    inTable.rows[arrRowsId[5]].className = "MOUSE_HOVER";
					    _Select_Row = arrRowsId[5];
				    }
		        }
		        if (e.tagName == "TD")
		        {
		            arrRowsId = e.id.split("_");
		            if (typeof(arrRowsId[5]) != "undefined") {
		                arrRowsId[5] = parseInt(arrRowsId[5]) + 1;
					    inTable.rows[arrRowsId[5]].className = "MOUSE_HOVER";
					    _Select_Row = arrRowsId[5];
				    }
		        }
		    }
		    this.tableMouseOut = function(){
			    var e = event.srcElement;
			    if (e.tagName == "LABEL")  
		        {
			        if(e.id != "")
			        {
				        //ShowData(e.id);
			        }
		        }
		        if (e.tagName == "NOBR")  
		        {
		            arrRowsId = e.id.split("_");
		            if (typeof(arrRowsId[5]) != "undefined") {
		                arrRowsId[5] = parseInt(arrRowsId[5]) + 1;
					    inTable.rows[arrRowsId[5]].className = "MOUSE_OUT";
				    }
		        }
		        if (e.tagName == "TD")
		        {
		            arrRowsId = e.id.split("_");
		            if (typeof(arrRowsId[5]) != "undefined") {
		                arrRowsId[5] = parseInt(arrRowsId[5]) + 1;
					    inTable.rows[arrRowsId[5]].className = "MOUSE_OUT";
				    }
		        }
		    }
		    if (typeof(inTable) != "undefined") {
		        inTable.detachEvent("onclick");
				inTable.attachEvent("onclick",this.tableClick);
				inTable.detachEvent("onmouseover");
				inTable.attachEvent("onmouseover",this.tableMouseOver);
				inTable.detachEvent("onmouseout");
				inTable.attachEvent("onmouseout",this.tableMouseOut);
			}
	    }
		inObj.detachEvent("onkeyup");
		inObj.attachEvent("onkeyup",this.objKeyUp);
		inObj.detachEvent("onkeypress");
		inObj.attachEvent("onkeypress",this.objKeyPress);
		inObj.attachEvent("onpropertychange",this.objPropertyChange);
	}
	/*
	 * 初始化属性
	 */
	_Select_Row = 0;
	if (typeof(inputObj) == "object") 
		this._Obj = inputObj;
	else 
		this._Obj = $(inputObj);
	if (headerColumns) {
		this._HeaderColumns = headerColumns;
	}
	else {
		this._HeaderColumns = {
			col_name: null,
			col_width: null
		};
	}
	if (dataSource){
		this._DataSource = dataSource
	}
	else {
		this._DataSource = {
			columnName : new Array(),
			rows : new Array()
		}
	}
	if (typeof(_Table_Class)== "undefined") _Table_Class = "DDLTable";
	
	if (!this._Div) {
		this._Div = funProcess.getDiv(this._Obj);
	}

	//funProcess.showTable(headerColumns,_DataSource,_Obj.value);
//	this._Obj.attachEvent("onclick",function() {
//		if(_Obj.value == '') return;
//	    if (funProcess.isChineseStr(_Obj.value)) {
//			funProcess.showTable(headerColumns,_DataSource,_Obj.value,'CNAME');
//	        eventProcess.showDiv(true);
//		}
//		else {
//			funProcess.showTable(headerColumns,_DataSource,_Obj.value,'CITYCODE');
//	        eventProcess.showDiv(true);
//		}
//	});
	eventProcess(this._Obj,this._Div,this._DataSource,this._HeaderColumns)
	//eventProcess.tableRegEvent();
}

function initDDLTable(inObj1,inObj2) {
    var dataSource = {
        columnName : [
            'CNAME','ENAME','CITYCODE','CITYPY'
            ],
        rows : [
            ['科隆','COLOKN','AAH','K'],
            ['奥尔堡','AALBOUG','AAL','A'],
            ['奥尔胡斯','AARHUS','AAR','A'],
            ['阿勒泰','ALTAY','AAT','A'],
            ['阿比让','abidjan','ABJ','A'],
            ['阿尔伯克基','ALBUQUERQU','ABQ','A'],
            ['阿卡普尔科','ACAPULCO','ACA','A'],
            ['阿克拉','ACCRA','ACC','A'],
            ['兴义','','ACX','X'],
            ['伊兹密尔','IZMIR TURKEY','ADB','Y'],
            ['阿德莱德','ADELAIDE','ADL','A'],
            ['马拉加','MALAGA','AGP','M'],
            ['奥古斯塔','AUGUSTA','AGS','A'],
            ['安康','ANKANG','AKA','A'],
            ['旭川','','AKJ','X'],
            ['奥克兰','AUCKLAND','AKL','A'],
            ['阿克苏','AKSU','AKU','A'],
            ['阿拉木图','ALMATY','ALA','A'],
            ['阿利坎特','alicante','ALC','A'],
            ['安曼','AMMAN','AMM','A'],
            ['阿姆斯特丹','AMSTERDAM','AMS','A'],
            ['安克雷奇','ANCHORAGE','ANC','A'],
            ['安特卫普','ANTWERP','ANR','A'],
            ['阿鲁巴岛','ARUBA','AUA','A'],
            ['阿布扎比','ABUDHABI','AUH','A'],
            ['奥斯丁','AUSTIN','AUS','A'],
            ['安顺','anshun','AVA','A'],
            ['卡拉马祖','KALAMAZOO','AZO','K'],
            ['巴林','BAHRAIN','BAH','B'],
            ['巴库','BAKU','BAK','B'],
            ['巴兰基利亚','BARRANQUILLA','BAQ','B'],
            ['包头','BAOTOU','BAV','B'],
            ['巴塞罗纳','BARCELONA','BCN','B'],
            ['百慕大群岛','BERMUDA','BDA','B'],
            ['温莎','WINDSOR LO','BDL','W'],
            ['贝尔格莱德','BELGRADE','BEG','B'],
            ['柏林','BERLIN','BER','B'],
            ['贝鲁特','BEIRUT','BEY','B'],
            ['贝尔法斯特','BELFAST','BFS','B'],
            ['巴巴多斯岛','BARBADOS','BGI','B'],
            ['卑尔根','BERGEN','BGO','B'],
            ['博洛尼亚(意大利城市)','BOLOGNA','BLQ','B'],
            ['班加罗尔','BANGALORE','BLR','B'],
            ['纳什维尔[美国田纳西州首府]','NASHVILLE','BNA','N'],
            ['布里斯班','BRISBANE','BNE','B'],
            ['波尔多','BORDEAUX','BOD','B'],
            ['波哥达','BOGOTA','BOG','B'],
            ['博内茅斯','bournemouth','BOH','B'],
            ['博伊西','boise','BOI','B'],
            ['孟买','BOMBAY','BOM','M'],
            ['波士顿','BOSTON','BOS','B'],
            ['不来梅','不来梅','BRE','B'],
            ['巴里','BARI','BRI','B'],
            ['伯尔尼','BERNE','BRN','B'],
            ['布里斯托尔','BRISTOL','BRS','B'],
            ['布鲁塞尔','BRUSSELS','BRU','B'],
            ['保山','','BSB','B'],
            ['宝山','BAOSHAN','BSD','B'],
            ['巴塞耳','BASLE','BSL','B'],
            ['布拉迪斯拉发','BRATISLAVA','BTS','B'],
            ['布达佩斯','BUDAPEST','BUD','B'],
            ['布宜诺斯艾利斯（阿根廷）','BUEN  AIRES','BUE','B'],
            ['布法罗','buffalo','BUF','B'],
            ['布加勒斯特','BUCHAREST','BUH','B'],
            ['巴统','BATUMI','BUS','B'],
            ['KJKJLKLJKLJ','KJLKLJLKJ','BVC','K'],
            ['巴尔的摩','BALTIMORE','BWI','B'],
            ['斯里巴加湾市','BANDAR  SERI B','BWN','S'],
            ['白云机场','','BYS','B'],
            ['伯利兹城','BELIZE','BZE','B'],
            ['哥伦比亚','COLUMBIA','CAE','G'],
            ['卡利亚里','cagliari','CAG','K'],
            ['开罗','CAIRO','CAI','K'],
            ['阿克伦城','AKRON','CAK','A'],
            ['广州','GUANGZHOU','CAN','G'],
            ['卡萨布兰卡','CASABLANCA','CAS','K'],
            ['堪培拉','Canberra','CBR','K'],
            ['加拉加斯(委内瑞拉首都)','CARACAS','CCS','J'],
            ['加尔各答','CALCUTTA','CCU','J'],
            ['戴高乐机场','PARIS_DE_GAULLE','CDG','D'],
            ['宿务岛','CEBU','CEB','S'],
            ['长治','','CIH','C'],
            ['清州','CHEONGJU','CJJ','Q'],
            ['济州','JEJU','CJU','J'],
            ['重庆','CHONGQING','CKG','Z'],
            ['克里夫兰','CLEVELAND','CLE','K'],
            ['卡利','CALI','CLO','K'],
            ['夏洛特','CHARLOTTE','CLT','X'],
            ['科伦波','COLOMBO','CMB','K'],
            ['伯明翰','BIRMINGHAM','BHM','B'],
            ['伯明翰','BIRMINGHAM','BHX','B'],
            ['北海','BEIHAI','BHY','B'],
            ['比灵斯','BILLINGS','BIL','B'],
            ['毕尔巴鄂','BILBAO','BIO','B'],
            ['哥打巴鲁','KOTAKINABALU','BKI','G'],
            ['曼谷','BANGKOK','BKK','M'],
            ['安提瓜岛','ANTIGUA','ANU','A'],
            ['青森','','AOJ','Q'],
            ['APG','AGP','APG','A'],
            ['安庆','ANQING','AQG','A'],
            ['阿什哈巴德','Ashgabat','ASB','A'],
            ['亚松森','ASUNCION','ASU','Y'],
            ['雅典(希腊首都)','ATHENS','ATH','Y'],
            ['亚特兰大','ATLANTA','ATL','Y'],
            ['哥伦布','COLUMBUS','CMH','G'],
            ['贝洛奥里藏特','BELO HORIZONTE','CNF','B'],
            ['哥本哈根','COPENHAGEN','CPH','G'],
            ['CRK','CRK','CRK','C'],
            ['长沙','CHANGSHA','CSX','C'],
            ['札幌','SAPPORO','CTS','Z'],
            ['成都','CHENGDU','CTU','C'],
            ['戴顿','DAYTON','DAY','D'],
            ['丹东','DANDONG','DDG','D'],
            ['德里','DEL','DEL','D'],
            ['丹佛','DENVER','DEN','D'],
            ['达拉斯','DALLAS','DFW','D'],
            ['达兰','DHAHRAN','DHA','D'],
            ['中甸','DIQING','DIG','Z'],
            ['大连','DAlian','DLC','D'],
            ['大理','DALI','DLU','D'],
            ['达曼','DAMMAN','DMM','D'],
            ['敦煌','DUNHUANG','DNH','D'],
            ['多哈（卡塔尔首都）','DOHA','DOH','D'],
            ['杜塞尔多夫','DUSSELDORF','DUS','D'],
            ['迪拜','DUBAI','DXB','D'],
            ['HGJ','HJKL','DYG','H'],
            ['杜尚别','Dushanbe','DYU','D'],
            ['恩德培','entebbe','EBB','E'],
            ['爱丁堡','EDINBURGH','EDI','A'],
            ['艾恩德霍芬','EINDHOVEN','EIN','A'],
            ['南锡','NANCY','ENC','N'],
            ['佛罗伦萨','FLORENCEITALY','FLR','F'],
            ['穆斯特','MUNSTER','FMO','M'],
            ['平壤','PYONGYANG','FNJ','P'],
            ['福州','FUZHOU','FOC','F'],
            ['法兰克福','FRANKFURT','FRA','F'],
            ['比什凯克','BISHKEK','FRU','B'],
            ['阜阳','FUYANG','FUG','F'],
            ['福冈','FUKUOKA','FUK','F'],
            ['汉城机场','SEOUL','GMP','H'],
            ['格林纳达','GRENADA','GND','G'],
            ['热那亚','GENOA','GOA','R'],
            ['哥德堡','GOTHENBURG','GOT','G'],
            ['格林伍德','GREENWOOD','GRD','G'],
            ['瓜拉尼','GUARULHOS','GRU','G'],
            ['格拉茨','GRAZ','GRZ','G'],
            ['海口','HAIKOU','HAK','H'],
            ['汉堡','HAMBURG','HAM','H'],
            ['河内','HANOI','HAN','H'],
            ['邯郸','HANDAN','HDG','H'],
            ['花都','','HDU','H'],
            ['黑河','','HEK','H'],
            ['赫尔辛基','HELSINKI','HEL','H'],
            ['呼和浩特','HUHEHAOTE','HET','H'],
            ['合肥','HEFEI','HFE','H'],
            ['杭州','HANGZHOU','HGH','H'],
            ['长沙','HUANGHUA','HHA','C'],
            ['芷江','','HHJ','*'],
            ['哈恩','HAHN','HHN','H'],
            ['广岛','HIROSHIMA','HIJ','G'],
            ['芷江','','HJJ','*'],
            ['函管','','HKD','H'],
            ['香港','HONGKONG','HKG','X'],
            ['海拉尔','HAILAR','HLD','H'],
            ['乌兰浩特','','HLH','W'],
            ['海德拉巴','HYDERABAD','HYD','H'],
            ['黄岩','HUANGYAN','HYN','H'],
            ['华盛顿','WASHINGTON DC','IAD','H'],
            ['休斯顿','HOUSTON TX','IAH','X'],
            ['首尔仁川机场','INCHEON','ICN','S'],
            ['威奇托','wichita','ICT','W'],
            ['基辅','KIEV','IEV','J'],
            ['德黑兰机场','tehran','IKA','D'],
            ['伊尔库茨克','IRKUTSK','IKT','Y'],
            ['银川','YINCHUAN','INC','Y'],
            ['印第安纳波利斯(美)','INDIANAPO','IND','Y'],
            ['因斯布鲁克','innsbruck','INN','Y'],
            ['怡保','ipoh','IPH','*'],
            ['且末','QIEMO','IQM','Q'],
            ['伊斯兰堡','ISLAMABAD','ISB','Y'],
            ['伊斯坦布尔','ISTANBUL','IST','Y'],
            ['斋浦尔','JAIPUR','JAI','Z'],
            ['杰克逊','JACKSON','JAN','J'],
            ['杰克逊','JACKSONVIL','JAX','J'],
            ['景德镇','JINGDEZHEN','JDZ','J'],
            ['吉达[沙特阿拉伯西部港市]','JEDDAH','JED','J'],
            ['纽约','NEW YORK NY','JFK','N'],
            ['井岗山机场','jinggangshan','JGS','J'],
            ['新山，柔佛巴鲁','JOHORE BAHRU','JHB','X'],
            ['景洪','jinghong','JHG','J'],
            ['吉林','JILIN','JIL','J'],
            ['九江','JIUJIANG','JIU','J'],
            ['晋江','JINJIANG','JJN','J'],
            ['库车','KUCHE','KCA','K'],
            ['古清','KUQING','KCH','G'],
            ['加里宁格勒','kaliingrad','KGD','J'],
            ['喀什','KASHI','KHG','K'],
            ['高雄','KAOSIUNG','KHH','G'],
            ['卡拉奇','KARACHI','KHI','K'],
            ['南昌','NANCHANG','KHN','N'],
            ['伯力','KHABAROVSK','KHV','B'],
            ['新泻','NIIGATA','KIJ','X'],
            ['金斯敦','KINGSTON','KIN','J'],
            ['大阪','Osaka','KIX','D'],
            ['喀纳斯','KANASI','KJI','K'],
            ['北九州','KITA KYUSHU','KKJ','B'],
            ['昆明','KUNMING','KMG','K'],
            ['宫崎','MIYAZAKI','KMI','G'],
            ['熊本','KUMAMOTO','KMJ','X'],
            ['鹿儿岛','KAGOSHIMA','KOJ','L'],
            ['贵阳','GUIYANG','KWE','G'],
            ['科威特','KUWAIT','KWI','K'],
            ['光州','KWANGJU','KWJ','G'],
            ['桂林','GUILIN','KWL','G'],
            ['LUANDA','luanda','LAD','L'],
            ['阿拉瓦','Laoag','LAO','A'],
            ['拉斯维加斯','LAS VEGAS','LAS','L'],
            ['洛杉矶','LOSANGELES','LAX','L'],
            ['利兹','LEEDS','LBA','L'],
            ['伦敦盖克机场','LONDON','LGW','L'],
            ['拉海尔','LAHORE','LHE','L'],
            ['伦敦希思罗机场','LONDON','LHR','L'],
            ['兰州','LANZHOU','LHW','L'],
            ['里尔','LILLE','LIL','L'],
            ['利马','LIMA','LIM','L'],
            ['米兰','MILAN','LIN','M'],
            ['里斯本','lisbon','LIS','L'],
            ['小石城','LITTLE RO','LIT','X'],
            ['丽江','LIJIANG','LJG','L'],
            ['卢布尔雅那','LJUBLJANA','LJU','L'],
            ['永州','','LLF','Y'],
            ['LILONGWE','','LLW','L'],
            ['临沧','','LMJ','L'],
            ['林茨','LINZ','LNZ','L'],
            ['伦敦','LONDON','LON','L'],
            ['洛阳','LUOYANG','LYA','L'],
            ['连云港','LIANYUNGANG','LYG','L'],
            ['费萨那巴德','faisalabad','LYP','F'],
            ['里昂','LYON','LYS','L'],
            ['柳州','LIUZHOU','LZH','L'],
            ['泸州','luzhou','LZO','*'],
            ['马德拉斯','CHENNAI','MAA','M'],
            ['马德里','MADRID','MAD','M'],
            ['曼切斯特(英国英格兰西北部港市)','MANCHESTER','MAN','M'],
            ['马瑙斯[巴西西北部城市]','Manaus','MAO','M'],
            ['堪萨斯','KANSAS','MCI','K'],
            ['奥兰多','ORLANDO','MCO','A'],
            ['马斯喀特','MUSCAT','MCT','M'],
            ['麦德林','medellin','MDE','M'],
            ['墨尔本','MELBOURNE','MEL','M'],
            ['孟菲斯','MEMPHIS','MEM','M'],
            ['棉兰','MEDAN','MES','M'],
            ['墨西哥城','MEXICO　CITY','MEX','M'],
            ['麦卡伦','MCALLEN','MFE','M'],
            ['澳门','macau','MFM','A'],
            ['马那瓜','MANAGUA','MGA','M'],
            ['蒙哥马利','MONTGOMERY','MGM','M'],
            ['曼海姆','MANNHEIM','MHG','M'],
            ['马尔墨','MALMO','MMA','M'],
            ['松本','','MMJ','S'],
            ['马尼拉','MANILA_NINOY_INTL','MNL','M'],
            ['墨比尔','MOBILE','MOB','M'],
            ['莫斯科','moscow','MOW','M'],
            ['蒙彼利埃','MONTPELLIER','MPL','M'],
            ['马赛','MARSEILLE','MRS','M'],
            ['毛里求斯','MAURITIUS','MRU','M'],
            ['密苏拉','missoula','MSO','M'],
            ['法兰克福','FRANKFURT','NES','F'],
            ['宁波','NINGBO','NGB','N'],
            ['名古屋','NAGOYA','NGO','M'],
            ['南京','NANJIN','NKG','N'],
            ['哪拉提','','NLT','N'],
            ['南宁','NENNING','NNG','N'],
            ['南阳','NANYANG','NNY','N'],
            ['成田机场','NARITA','NRT','C'],
            ['南特','NANTES','NTE','N'],
            ['南通','NANTONG','NTG','N'],
            ['纽伦堡','NUREMBERG','NUE','N'],
            ['纽伦堡','NULATO','NUL','N'],
            ['纽约','NEWYORK','NYC','N'],
            ['满洲里','','NZH','M'],
            ['奥克兰','OAKLAND','OAK','A'],
            ['代广','','OBO','D'],
            ['大分','OITA','OIT','D'],
            ['冲绳','OKINAWA','OKA','C'],
            ['俄克拉荷马州','OKLAHDMA C','OKC','E'],
            ['奥马哈','OMAHA','OMA','A'],
            ['诺姆','NOME','OME','N'],
            ['鄂木斯克','OMSK','OMS','E'],
            ['ONTARIO','ONTARIO','ONT','O'],
            ['波尔图','PORTO','OPO','B'],
            ['芝加哥','chicago','ORD','Z'],
            ['奥尔良','ORLEANS','ORE','A'],
            ['诺福克','norfolk','ORF','N'],
            ['科克城','cork','ORK','K'],
            ['奥兰多','ORLANDO','ORL','A'],
            ['巴黎','PARIS','ORY','B'],
            ['大阪','OSAKA','OSA','D'],
            ['北京','BEIJING','PEK','B'],
            ['槟城','PENANG','PEN','*'],
            ['佩斯','PERTH','PER','P'],
            ['白沙瓦','PESHAWAR','PEW','B'],
            ['费城','philadelphia','PHL','F'],
            ['凤凰城','PHOENIX','PHX','F'],
            ['皮奥里亚','peoria','PIA','P'],
            ['普雷斯蒂克','Prestwick','PIK','P'],
            ['匹兹堡','PITTSBURGH','PIT','P'],
            ['普利茅斯','plymouth','PLH','P'],
            ['帕尔马','PALMA MALLORC','PMI','P'],
            ['马勒莫','PALERMO','PMO','M'],
            ['金边','PHNOM PENH','PNH','J'],
            ['坤甸','PONTIANAK','PNK','K'],
            ['PORTMORESBY','','POM','P'],
            ['特立尼达岛','TRINIDAD','POS','T'],
            ['布拉格','PRAGUE','PRG','B'],
            ['比萨','PISA','PSA','B'],
            ['巴拿马','PANAMA　CITY','PTY','B'],
            ['斧山','busan','PUS','F'],
            ['普罗维登斯','providence','PVD','P'],
            ['上海浦东','SHANGHAIPUDONG','PVG','S'],
            ['波特兰','PORTLAND','PWM','B'],
            ['里丁','READING','RDG','L'],
            ['达拉谟','DURHAM','RDU','D'],
            ['暹粒','','REP','*'],
            ['仰光','YANGON','RGN','Y'],
            ['里士満','RICHMOND','RIC','L'],
            ['里约热内卢(巴西港市','R JANWIRO','RIO','L'],
            ['里加','','RIX','L'],
            ['里诺','RENO','RNO','L'],
            ['罗阿诺克','ROANOKE','ROA','L'],
            ['罗切斯特','ROCHESTER','ROC','L'],
            ['罗马','ROME','ROM','L'],
            ['鹿特丹','ROTTERDAM','RTM','L'],
            ['利雅得','RIYADH','RUH','L'],
            ['赛班岛','SABA ISLAND','SAB','S'],
            ['萨克拉曼多','SACRAMENTO','SAC','S'],
            ['萨那','SANAA','SAH','S'],
            ['圣多明各','SANTIAGO COMP','SCQ','S'],
            ['路易斯维尔','LOUISVILLE','SDF','L'],
            ['仙台','SENDAI','SDJ','X'],
            ['圣多明哥','SANTO DOMINGO','SDQ','S'],
            ['西雅图','SEATTLE','SEA','X'],
            ['首尔','SEOUL','SEL','S'],
            ['三藩市','SAN FRANCISCO','SFO','S'],
            ['斯普林菲尔德','SPRINGFIELD','SGF','S'],
            ['胡志明市','HO CHI MINH CITY','SGN','H'],
            ['上海虹桥','SHANGHAI','SHA','S'],
            ['沈阳','SHENYANG','SHE','S'],
            ['沙迦','SHARJAH','SHJ','S'],
            ['秦皇岛','QINHUANGDAO','SHP','Q'],
            ['沙市','SHASHI','SHS','S'],
            ['什里夫波特','SHREVEPORT','SHV','S'],
            ['西安','','SIA','X'],
            ['新加坡','SINGAPORE','SIN','X'],
            ['圣何塞','SAN JOSE','SJC','S'],
            ['圣何塞','SAN JOSE','SJO','S'],
            ['圣胡安','SAN JUAN','SJU','S'],
            ['石家庄','SHIJIAZHUANG','SJW','S'],
            ['盐湖','SALT LAKE','SLC','Y'],
            ['香农','SHANNON','SNN','X'],
            ['索非亚','SOFIA','SOF','S'],
            ['南安普顿','SOUTHAMPTON','SOU','N'],
            ['札幌','SAPPORO','SPK','Z'],
            ['阿姆斯特丹机场','SCHIPOL','SPL','A'],
            ['塞班岛','SAIPAN','SPN','S'],
            ['锡拉库扎','SYRACUSE','SYR','X'],
            ['三亚','SANYA','SYX','S'],
            ['苏州','','SZD','S'],
            ['萨尔茨堡','SALZBURG','SZG','S'],
            ['深圳','SHENZHEN','SZX','S'],
            ['SZCZECIN','szczecin','SZZ','S'],
            ['大邱','DAEGU','TAE','D'],
            ['坦纳','TANNA','TAH','T'],
            ['高松市','','TAK','G'],
            ['青岛','QINGDAO','TAO','Q'],
            ['塔什干','TASHKENT','TAS','T'],
            ['塔城','tacheng','TCG','T'],
            ['铜仁','','TEN','T'],
            ['HHG','hkj','TES','H'],
            ['瓜拉丁加奴','KUALA TERENGGANU','TGG','G'],
            ['特古西加尔巴','TEGUCIGALPA','TGU','T'],
            ['特雷西纳','TERESINA','THE','T'],
            ['德黑兰','TEHRAN','THR','D'],
            ['图尔库','TURKU','TKU','T'],
            ['的里雅斯特','TRIESTE','TRS','D'],
            ['特鲁希略','TRUJILLO','TRU','T'],
            ['阿斯塔纳','','TSE','A'],
            ['天津','TIANJIN','TSN','T'],
            ['南方航空公司测试组','','TST','N'],
            ['南航演示','CSNDISPLAY','TTT','N'],
            ['塔尔萨','TULSA','TUL','T'],
            ['图森','TUCSON','TUS','T'],
            ['柏林','BERLIN TEGEL','TXL','B'],
            ['潍纺','WEIFANG','WEF','W'],
            ['威海','WEIHAI','WEH','W'],
            ['威灵顿','WELLINGTON','WLG','W'],
            ['文山','WENSHAN','WNH','W'],
            ['温州','WENZHOU','WNZ','W'],
            ['WROCLAW','wroclaw','WRO','W'],
            ['武汉','WUHAN','WUH','W'],
            ['武夷山','WUYISHAN','WUS','W'],
            ['无锡','','WUX','W'],
            ['埃德蒙顿','EDMONTON','YEA','A'],
            ['埃德蒙顿','EDMONTON','YEG','A'],
            ['伊大','YIDAO','YHH','Y'],
            ['宜昌','YICHANG','YIH','Y'],
            ['伊宁','YINING','YIN','Y'],
            ['义乌','YIWU','YIW','Y'],
            ['蒙特利尔','MONTREAL','YMQ','M'],
            ['蒙特利尔米拉贝尔机场','MONTREAL(MIRABEL INTERNATIONAL AIRPORT)','YMX','M'],
            ['延吉','YANJI','YNJ','Y'],
            ['烟台','YANTAI','YNT','Y'],
            ['盐城','YANCHENG','YNZ','Y'],
            ['渥太华','OTTAWA','YOW','*'],
            ['魁北克','','YQB','K'],
            ['多伦多','TORONTO','YTO','D'],
            ['蒙特利尔机场','MONTREAL DORVAL','YUL','M'],
            ['温哥华','VANCOUVER','YVR','W'],
            ['温尼伯','WINNIPEG','YWG','W'],
            ['黄山','HUANGSHAN','YXN','H'],
            ['卡尔加里','CALGARY','YYC','K'],
            ['多伦多机场','TORONTO PEARSON','YYZ','D'],
            ['萨格勒布','ZAGREB','ZAG','S'],
            ['昭通','ZHAOTONG','ZAT','Z'],
            ['兰州','LANZHOU','ZGC','L'],
            ['湛江','ZHANJIANG','ZHA','Z'],
            ['苏黎世','ZURICH','ZRH','S'],
            ['珠海','ZHUHAI','ZUH','Z'],
            ['坎皮纳斯国际机场（巴西）','VIRACOPOS','VCP','K'],
            ['维也纳','VIENNA','VIE','W'],
            ['VICTORIA','VICTORIA','VIX','V'],
            ['巴伦西亚','VALENCIA','VLC','B'],
            ['维尔纽斯[立陶宛共和国首都]','Vilnius','VNO','W'],
            ['维罗纳','VERONA','VRN','W'],
            ['万象','VIENTIANE','VTE','W'],
            ['海参崴','VLADIVOSTOK','VVO','H'],
            ['华盛顿','WASHINGTON','WAS','H'],
            ['华沙','WARSAW','WAW','H'],
            ['雅加达','JAKARTA','JKT','Y'],
            ['佳木斯','JIAMUSI','JMU','J'],
            ['约翰内斯堡','JOHANNESBURG','JNB','Y'],
            ['锦州','JINZHOU','JNZ','J'],
            ['格拉斯（奥地利）','','JRZ','G'],
            ['衢州','QUZHOU','JUI','*'],
            ['衢州','JUZHOU','JUZ','*'],
            ['九黄','JIUHUANG','JZH','J'],
            ['喀布尔','KABUL','KBL','K'],
            ['基辅','KIEV','KBP','J'],
            ['拉伯克','LUBBOCK','LBB','L'],
            ['胡正特','KHUDZHAND','LBD','H'],
            ['蓝伯顿','Lumberton','LBT','L'],
            ['塞浦路斯','LARNACA','LCA','S'],
            ['伦敦','LONDON','LCY','L'],
            ['胡正特','','LDB','H'],
            ['勒阿弗尔','LE HAVRE','LEH','L'],
            ['莱比希','LEIPZIG','LEJ','L'],
            ['列克星敦','Lexington','LEX','L'],
            ['迈阿密','MIAMI','MIA','M'],
            ['绵阳','mianyang','MIG','M'],
            ['米兰','MILAN','MIL','M'],
            ['堪萨斯州','KANSAS CITY','MKC','K'],
            ['密尔沃基','MILWAUKEE','MKE','M'],
            ['马斯基根','MUSKEGON','MKG','M'],
            ['马耳他','MALTA','MLA','M'],
            ['马累','MALE','MLE','M'],
            ['牟罗兹','mulhouse','MLH','M'],
            ['莫林','moline','MLI','M'],
            ['明尼阿波利斯','Minneapolis','MSP','M'],
            ['MSQ','MINSK','MSQ','M'],
            ['马斯特里希特','MAASTRICHT','MST','M'],
            ['新奥尔良','NEW　ORLEAN','MSY','X'],
            ['蒙特雷','MONTERREY','MTY','M'],
            ['慕尼黑','MUNICH','MUC','M'],
            ['蒙得维的亚(乌拉圭首都)','MONTEVIDEO','MVD','M'],
            ['光州','','MWX','G'],
            ['米兰','Milan','MXP','M'],
            ['梅县','MEIXIAN','MXZ','M'],
            ['萨尔瓦多','Salvador','SSA','S'],
            ['札幌','','STK','Z'],
            ['圣路易斯','ST LOUIS','STL','S'],
            ['斯德哥尔摩','STOCKHOLM','STO','S'],
            ['斯图加特','STUTTGART','STR','S'],
            ['圣托马斯','ST THOMAS','STT','S'],
            ['苏腊卡尔塔','SURABAYA','SUB','S'],
            ['富勒敦','Fullerton','FUL','F'],
            ['阜阳','FUYANG','FUZ','F'],
            ['韦恩','FT WAYNE','FWA','W'],
            ['瓜达拉哈拉','GUADALAJARA','GDL','G'],
            ['格但斯克','GDANSK','GDN','G'],
            ['森特威尔','Centerville','GHM','S'],
            ['里约热内卢','RIO DE JANEIRO','GIG','L'],
            ['格拉斯哥','GLASGOW','GLA','G'],
            ['TALLINN','','TLL','T'],
            ['图卢兹','TOULOUSE','TLS','T'],
            ['特拉维夫','TEL AVIV YAFO','TLV','T'],
            ['坦佩雷','TAMPERE','TMP','T'],
            ['济南','JINAN','TNA','J'],
            ['托莱多','TOLEDO','TOL','T'],
            ['富山','TOYAMA','TOY','F'],
            ['坦帕[美国佛罗里达州西部港市]','TAMPA','TPA','T'],
            ['台北','TAIPEI','TPE','T'],
            ['都灵','TURIN','TRN','D'],
            ['塞班','Mount Gunson','GSN','S'],
            ['格林斯博罗','GREENSBORO','GSO','G'],
            ['危地马拉','GUATEMALA CTY','GUA','W'],
            ['关岛','GUAM','GUM','G'],
            ['日内瓦','GENEVA','GVA','R'],
            ['瓜亚基尔','GUAYAQUIL','GYE','G'],
            ['戈亚尼亚','GYN','GYN','G'],
            ['广元','GUANGYUAN','GYS','G'],
            ['汉诺威','HANOVER','HAJ','H'],
            ['巴厘岛','BALI  ISLAND','DPS','B'],
            ['德累斯顿','dresden','DRS','D'],
            ['达尔文','DARWIN','DRW','D'],
            ['得梅因','Des Moines','DSM','D'],
            ['鄂尔多斯','','DSN','E'],
            ['多特蒙德','DORTMUND','DTM','D'],
            ['底特律','DETROIT','DTT','D'],
            ['底特律','DETROIT','DTW','D'],
            ['都柏林','DUBLIN','DUB','D'],
            ['德班','DURBAN','DUR','D'],
            ['圣萨尔瓦多','SAN SALVADOR','SAL','S'],
            ['圣地亚哥','SAN DIEGO','SAN','S'],
            ['圣保罗','SAO PAVLO','SAO','S'],
            ['圣萨尔瓦多','SAN PEDRO SUL','SAP','S'],
            ['圣地亚哥','SAN ANTON','SAT','S'],
            ['萨凡纳','SAVANNAH','SAV','S'],
            ['南本德','SOUTH BEND','SBN','N'],
            ['西布','SIBU','SBW','X'],
            ['圣地亚哥X智利首都','SANTIAGO','SCL','S'],
            ['斯塔万','STAVANGER','SVG','S'],
            ['莫斯科','MOSCOW','SVO','M'],
            ['叶卡捷琳堡','EKATERINBURG','SVX','Y'],
            ['汕头','SHANTOU','SWA','S'],
            ['斯特拉斯堡','STRASBOURG','SXB','S'],
            ['悉尼','SYDNEY','SYD','X'],
            ['思矛','SIMAO','SYM','S'],
            ['夏威夷','HONOLULU','HNL','X'],
            ['修斯顿','HOUSTON','HOU','X'],
            ['哈尔滨','HARBIN','HRB','H'],
            ['佐贺（日本）','SAGA','HSG','Z'],
            ['舟山','ZHOUSHAN','HSN','Z'],
            ['赤塔','','HTA','C'],
            ['和田','HOTAN','HTN','H'],
            ['花都','','HUD','H'],
            ['澳什','','OSH','A'],
            ['奥斯路(挪威首都)','OSLO','OSL','A'],
            ['奥什','OSHKOSH','OSS','A'],
            ['奥斯坦德','OSTEND','OST','A'],
            ['新西伯利亚','NOVOSIBIRISK','OVB','X'],
            ['巴黎','PARIS','PAR','B'],
            ['波特兰','PDRTLAND','PDX','B'],
            ['拉各斯','DDDD','LOS','L'],
            ['利物浦','LIVERPOOL','LPL','L'],
            ['拉雷多','LAREDO','LRD','L'],
            ['卢顿','LUTON','LTN','L'],
            ['芒市','luxi','LUM','M'],
            ['卢森堡','LUXEMBOURG','LUX','L'],
            ['拉萨','lhasa','LXA','L'],
            ['松山','MATSUYAMA','MYJ','S'],
            ['南充','','NAO','N'],
            ['那不勒斯','NAPLES','NAP','N'],
            ['内罗毕','NAIROBI','NBO','N'],
            ['尼斯','NICE','NCE','N'],
            ['纽卡斯尔','NEWCASTLE','NCL','N'],
            ['齐齐哈尔','QIQIHAR','NDG','Q'],
            ['恩贾梅纳','NDJAMENA','NDJ','E'],
            ['辛辛那提','CINCINNATI','CVG','X'],
            ['加的夫','CARDIFF','CWL','J'],
            ['常州','CHANGZHOU','CZX','C'],
            ['达卡','DHAKA','DAC','D'],
            ['丹尼亚斯','DANANG','DAD','D'],
            ['大马士革(叙利亚首都)','DAMASCUS','DAM','D'],
            ['达累斯萨拉姆(坦桑尼亚首都)','DAR ES SALAAM','DAR','D'],
            ['大同','','DAT','D'],
            ['牡丹江','MUDANJIANG','MDG','M'],
            ['中心镇','MIDDLETOWN','MDT','Z'],
            ['黄山屯溪机场','TUNXI','TXN','H'],
            ['太原','TAIYUAN','TYN','T'],
            ['东京','TOKYO','TYO','D'],
            ['诺克斯维尔','KNOXVILLE','TYS','N'],
            ['基多','QUITO','UIO','J'],
            ['乌戎潘当','UJUNG PANDANG','UPG','W'],
            ['乌鲁木齐','URUMCHI','URC','W'],
            ['威尼斯','VENICE','VCE','W'],
            ['恩施','ENSHI','ENH','E'],
            ['延安','YANAN','ENY','Y'],
            ['伊利','erie','ERI','Y'],
            ['埃文斯威','EVANSVILLE','EVV','A'],
            ['纽华克','NEWARK','EWR','N'],
            ['布宜诺斯艾利斯X 阿根廷首都','BUEN AIRES','EZE','B'],
            ['弗雷斯诺','FRESNO','FAT','F'],
            ['罗马','ROME_FIUMICINO','FCO','L'],
            ['万州','WANXIAN','WXN','W'],
            ['武夷山','WUYISHAN','WYS','W'],
            ['襄樊','XIANGFAN','XFN','X'],
            ['J','J','XIC','J'],
            ['锡林浩特','','XIL','X'],
            ['西安','XI AN','XIY','X'],
            ['厦门','XIAMEN','XMN','X'],
            ['西宁','XINING','XNN','X'],
            ['徐州','XUZHOU','XUZ','X'],
            ['宜宾','YIBIN','YBP','Y'],
            ['常德','CHANGDE','CGD','C'],
            ['雅加达','JAKARTA_SOEKARNO','CGK','Y'],
            ['科隆','COLOGNE','CGN','K'],
            ['郑州','ZHENGZHOU','CGO','Z'],
            ['吉大港','CHITTAGONG','CGP','J'],
            ['长春','CHANGCHUN','CGQ','C'],
            ['克赖斯特彻奇','CHRISTCHURCH','CHC','K'],
            ['芝加哥','CHICAGO','CHI','Z'],
            ['查尔斯顿','CHARLESTON','CHS','C'],
            ['酒泉','JIUQUAN','CHW','J'],
            ['赣州','GANZHOU','KOW','G'],
            ['克拉科夫','Krakow','KRK','K'],
            ['库尔勒','KUERLE','KRL','K'],
            ['奥斯路','KRISTIANSAND','KRS','A'],
            ['喀土木','khartoum','KRT','K'],
            ['克拉玛依机场','','KRY','K'],
            ['加德满都','KATHMANDU','KTM','J'],
            ['卡托维兹','KATOWICE','KTW','K'],
            ['吉隆坡','KUALA　LUMPUR','KUL','J']
        ]
    }
    headerColumns = [
        {col_name: 'CITYCODE',col_width: 50},
        {col_name: 'ENAME',col_width: 50}, 
        {col_name: 'CNAME',col_width: 50}
    ];
    objTest1 = document.getElementById(inObj1);
    objTest2 = document.getElementById(inObj2);
    objDDLTable1 = new PawnShop.UI.DDLTable(objTest1,headerColumns,dataSource);
    objDDLTable2 = new PawnShop.UI.DDLTable(objTest2,headerColumns,dataSource);
}